#ifndef ERP_GIS_DEFINE_H
#define ERP_GIS_DEFINE_H

namespace erp
{
namespace gis
{
namespace comm
{
/*
* 多个系统共用或相互引用的定义才要定义到这里；各个系统独享的定义不要到定义到这里；宏不要定义在这里；错误码不要定义到这里
* 定义原则：
* （1）尽量定义为枚举；序列值、多值等整数型变量需要定义为枚举类型
* （2）整型少用宏定义；一定不合适定义为枚举的整数，才定义为整形常量，不要使用宏定义
* （3）字符用常量定义；字符串尽量使用整形常量定义，不要使用宏
*/

/*
* 常量定义
*/
enum E_GISMAP_API_TYPE_DEFINE
{
	E_GISMAP_API_SOSO    = 1,
	E_GISMAP_API_SOSO2   = 2,
	E_GISMAP_API_BAIDU   = 3,
	E_GISMAP_API_GOOGLE  = 4,
	E_GISMAP_API_ALIYUN  = 5,
	E_GISMAP_API_GAODE   = 6,
};

enum E_GIS_SHIPLOCUS_STATUS
{
	E_GIS_SHIPLOCUS_STATUS_VALID   = 0,
	E_GIS_SHIPLOCUS_STATUS_INVALID = 1,
};

// 级别越高, 可信度越低
enum E_GEO_TRUST_LEVEL {
	E_GEO_TRUST_LEVEL_1 = 1,
	E_GEO_TRUST_LEVEL_2 = 2,
	E_GEO_TRUST_LEVEL_3 = 3,
	E_GEO_TRUST_LEVEL_4 = 4,
	E_GEO_TRUST_LEVEL_5 = 5,
	E_GEO_TRUST_LEVEL_6 = 6, // 默认级别,
};


/*
* 枚举定义
*/
enum employee_ordertype
{
	ORDERTYPE_MIN				=0,
	ORDERTYPE_UPDATETIME_DESC	=0,
	ORDERTYPE_UPDATETIME_ASC	=1,
	ORDERTYPE_ADDTIME_DESC		=2,
	ORDERTYPE_ADDTIME_ASC		=3,
	ORDERTYPE_MAX				=3,
};


enum employee_sex
{
	SEX_MIN				=0,
	SEX_MALE			=0,
	SEX_FEMALE			=1,
	SEX_UNKNOWN			=2,
	SEX_MAX				=2,
};


enum employee_status
{
	STATUS_MIN			=0,
	STATUS_WORKING		=0,
	STATUS_QUIT			=1,
	STATUS_ENTRY		=2,
	STATUS_MAX			=2,
};

enum employee_type
{
	TYPE_MIN					=0,
	TYPE_NORMAL_EMPLOYEE		=0,
	TYPE_MANAGER				=1,
	TYPE_INTERMEDIATE_MANAGER	=2,
	TYPE_SENIOR_MANAGER			=3,
	TYPE_MAX					=3,
};

enum employee_property
{
	PROPERTY_INDEX_BACKBONE		=0,
	PROPERTY_INDEX_EXTERNAL 	=1,
	PROPERTY_INDEX_MARRIED		=2,
};

enum employee_size
{
	LENGTH_ENGLISHNAME			=32,
	LENGTH_NAME					=16,
};

// from b2b2c/comm/b2b2c_define.h
// 区域ID类型 for daemon_gis_useraddr
enum AREA_ID_TYPE_ENUM {
    AREA_ID_GB = 1, // 国标区域ID
    AREA_ID_ICSON = 2, // 易迅区域ID
    AREA_ID_GB_EXTEND = 3 // 国标扩展ID
};


}
}
}

#endif
